Release 0.17.1#3290
Open
github-actions[bot] wants to merge 1 commit intomainfrom
Open
Conversation
21f3f50 to
9d2bb0f
Compare
9d2bb0f to
46b9ad0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release readiness review (v0.17.0 -> TARGET 46b9ad0)
This is a release readiness report done by
$final-release-reviewskill.Diff
v0.17.0...46b9ad0
Release call:
🟢 GREEN LIGHT TO SHIP No confirmed release-blocking regression, packaging break, data-loss issue, or unversioned breaking API change was found in the v0.17.0...TARGET diff.
Scope summary:
Risk assessment (ordered by impact):
No material risks identified.
Sandbox extraction and GitRepo validation hardening
SandboxArchiveLimitsand archive input/member/extracted-size checks were added;GitRepo.subpathnow rejects absolute paths, parent traversal, Windows paths, and whitespace-only paths; tests cover invalid subpaths and archive limit behavior.src/agents/run_config.py,src/agents/sandbox/session/archive_ops.py,src/agents/sandbox/session/archive_extraction.py,src/agents/sandbox/entries/artifacts.py,tests/sandbox/test_extract.py,tests/sandbox/test_entries.pyGitRepo.subpathvalues and opt-in archive limits.Chat Completions unsupported Responses-feature handling
prompt,previous_response_id,conversation_id, custom tool calls, and nonzero/multiple stream choices by default, with strict failure behind an explicit opt-in.OpenAIProvider(strict_feature_validation=...)andMultiProvider(openai_strict_feature_validation=...)are keyword-only additions; tests cover default warn-and-ignore behavior and strict-modeUserErrorpaths.src/agents/models/openai_chatcompletions.py,src/agents/models/chatcmpl_stream_handler.py,src/agents/models/openai_provider.py,src/agents/models/multi_provider.py,tests/models/test_openai_chatcompletions.py,tests/models/test_openai_chatcompletions_stream.pyuv run pytest tests/models/test_openai_chatcompletions.py tests/models/test_openai_chatcompletions_stream.py; pass criteria is all Chat Completions compatibility tests pass.Realtime session lifecycle and validation changes
RealtimeAgentvalidates core fields in__post_init__, reducing hangs and surfacing invalid setup earlier.RealtimeSession;RealtimeAgent.__post_init__validatesname,tools,handoffs, andinstructions; tests cover close wakeup, unknown tool calls, transcript preservation, and validation.src/agents/realtime/session.py,src/agents/realtime/agent.py,src/agents/realtime/config.py,tests/realtime/test_session.py,tests/realtime/test_agent.pyuv run pytest tests/realtime; pass criteria is all realtime tests pass without iterator hangs.Memory/session corruption handling and usage accounting fixes
pop_item, and usage aggregation preserves pre-existing request-level token details.Usage.addnow prefers existingrequest_usage_entries.src/agents/memory/sqlite_session.py,src/agents/extensions/memory/*.py,src/agents/usage.py,tests/memory/test_session.py,tests/extensions/memory/*.py,tests/test_usage.pyuv run pytest tests/memory tests/extensions/memory tests/test_usage.py; pass criteria is all session and usage tests pass.Tracing exporter resilience
_export_batchescatches exporter exceptions and logs a non-fatal error; tests assert the worker survives and later batches export.src/agents/tracing/processors.py,tests/test_trace_processor.pyuv run pytest tests/test_trace_processor.py; pass criteria is the exporter-exception regression test passes.Notes:
v0.17.0.46b9ad0423e7d3ba3eb1aa6d081cb71a8138ef4b.make format,make lint,make typecheck, andmake testsstack.